package main

import (
	"fmt"
	"plugin"
)

func main() {
	// 打开插件
	p, err := plugin.Open("plugin.so")
	if err != nil {
		fmt.Println("Error opening plugin:", err)
		return
	}

	// 获取插件中的符号
	v, err := p.Lookup("PluginMethod")
	if err != nil {
		fmt.Println("Error looking up symbol:", err)
		return
	}

	// 类型断言并调用函数
	f, ok := v.(PluginFunction)
	if ok {
		f()
	}
}
